<template>
  <a-card :bordered="false">
    <!-- 查询区域 -->
    <div class="table-page-search-wrapper">
      <a-form layout="inline" @keyup.enter.native="searchQuery">
        <a-row :gutter="24">
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="备品审批单号">
              <a-input placeholder="请输入备品审批单号" v-model="queryParam.spareOrderId"></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="备品名称">
              <a-input placeholder="请输入备品名称" v-model="queryParam.sparepartId"></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
              <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
              <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
            </span>
          </a-col>
        </a-row>
      </a-form>
    </div>
    <!-- 查询区域-END -->

    <!-- 操作按钮区域 -->
    <div class="table-operator">
<!--     <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>-->
      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
        <a-button type="primary" icon="import">导入</a-button>
      </a-upload>
      <a-button type="primary" icon="download" @click="handleExportXls('备品审批')">导出</a-button>

      <!-- 高级查询区域 -->
<!--      <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>-->
      <a-dropdown v-if="selectedRowKeys.length > 0">
        <a-menu slot="overlay">
          <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
        </a-menu>
        <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
      </a-dropdown>
    </div>

    <!-- table区域-begin -->
    <div>
      <div class='ant-alert ant-alert-info' style='margin-bottom: 16px;'>
        <i class='anticon anticon-info-circle ant-alert-icon'></i> 已选择 <a
        style='font-weight: 600'>{{ selectedRowKeys.length }}</a>项
        <a style='margin-left: 24px' @click='onClearSelected'>清空</a>
      </div>

      <a-table
        ref='table'
        size='middle'
        :scroll='{x:true}'
        bordered
        rowKey='id'
        :columns='columns'
        :dataSource='dataSource'
        :pagination='ipagination'
        :loading='loading'
        :rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}'
        class='j-table-force-nowrap'
        @change='handleTableChange'>

        <template slot='htmlSlot' slot-scope='text'>
          <div v-html='text'></div>
        </template>
        <template slot='imgSlot' slot-scope='text,record'>
          <span v-if='!text' style='font-size: 12px;font-style: italic;'>无图片</span>
          <img v-else :src='getImgView(text)' :preview='record.id' height='25px' alt=''
               style='max-width:80px;font-size: 12px;font-style: italic;' />
        </template>
        <template slot='fileSlot' slot-scope='text'>
          <span v-if='!text' style='font-size: 12px;font-style: italic;'>无文件</span>
          <a-button
            v-else
            :ghost='true'
            type='primary'
            icon='download'
            size='small'
            @click='downloadFile(text)'>
            下载
          </a-button>
        </template>

        <span slot='action' slot-scope='text, record'>
        <template v-if="record.status === '1'">
         <a-popconfirm title='是否确认审批?' @confirm='() => handleSend(record)'>
        <a type='primary'>
          审批
        </a>
      </a-popconfirm>
         </template>
          <template v-else>
          <a :disabled='true' type='primary'>
              审批
           </a>
          </template>
          <a-divider type="vertical" />
           <a @click="handleDetail(record)">详情</a>
        </span>

        

      </a-table>
    </div>

    <enedevice-sparepart-approval-modal ref="modalForm" @ok="modalFormOk"></enedevice-sparepart-approval-modal>
  </a-card>
</template>

<script>

import '@/assets/less/TableExpand.less'
import { mixinDevice } from '@/utils/mixin'
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import EnedeviceSparepartApprovalModal from './modules/EnedeviceSparepartApprovalModal'

export default {
  name: 'EnedeviceSparepartApprovalList',
  mixins:[JeecgListMixin, mixinDevice],
  components: {
    EnedeviceSparepartApprovalModal
  },
  data () {
    return {
      description: '备品审批管理页面',
      // 表头
      columns: [
        {
          title: '#',
          dataIndex: '',
          key:'rowIndex',
          width:60,
          align:"center",
          customRender:function (t,r,index) {
            return parseInt(index)+1;
          }
        },
        {
          title:'备品审批单号',
          align:"center",
          dataIndex: 'spareOrderId'
        },
        {
          title:'设备名称',
          align:"center",
          dataIndex: 'deviceId_dictText'
        },
        {
          title:'备品名称',
          align:"center",
          dataIndex: 'sparepartId_dictText'
        },
        {
          title:'备品数量',
          align:"center",
          dataIndex: 'spareNum'
        },
        {
          title:'发起人',
          align:"center",
          dataIndex: 'initiatorId_dictText'
        },
        {
          title:'发起时间',
          align:"center",
          dataIndex: 'subtime'
        },
        {
          title:'审批人',
          align:"center",
          dataIndex: 'approvalId_dictText'
        },
        {
          title:'审批状态',
          align:"center",
          dataIndex: 'status_dictText'
        },
        {
          title:'审批时间',
          align:"center",
          dataIndex: 'approvalTime'
        },
        {
          title:'审批来源',
          align:"center",
          dataIndex: 'sourceMark_dictText'
        },
       /* {
          title:'审批意见',
          align:"center",
          dataIndex: 'approvalInfo'
        },*/
        {
          title: '操作',
          dataIndex: 'action',
          align:"center",
          fixed:"right",
          width:147,
          scopedSlots: { customRender: 'action' }
        }
      ],
      url: {
        list: "/device/enedeviceSparepartApproval/list",
        delete: "/device/enedeviceSparepartApproval/delete",
        deleteBatch: "/device/enedeviceSparepartApproval/deleteBatch",
        exportXlsUrl: "/device/enedeviceSparepartApproval/exportXls",
        importExcelUrl: "device/enedeviceSparepartApproval/importExcel",

      },
      dictOptions:{},
      superFieldList:[],
    }
  },
  created() {
    this.getSuperFieldList();
  },
  computed: {
    importExcelUrl: function(){
      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
    },
  },
  methods: {
    handleSend(record) {
      this.$http.post('/device/enedeviceSparepartApproval/task/send', record)
        .then(response => {
          this.$message.success('审核成功')
          this.loadData()
        })
        .catch(error => {
          this.$message.error('审核失败，请稍后再试')
          console.error('Error sending task:', error)
        })
    },
    initDictConfig(){
    },
    getSuperFieldList() {
      let fieldList = [];
      fieldList.push({ type: 'string', value: 'spareOrderId', text: '备品单号', dictCode: '' })
      fieldList.push({ type: 'string', value: 'deviceId', text: '设备',dictCode: '' }
/*        dictTable: 'ene_device',
        dictText: 'device_name',
        dictCode: 'id'}*/)
      fieldList.push({ type: 'string', value: 'sparepartId', text: '备品id',
        dictTable :"ene_spare_parts",
        dicText : "name",
        dicCode : "id" })
      fieldList.push({ type: 'string', value: 'initiatorId', text: '发起人id', dictCode: '' })
      fieldList.push({ type: 'datetime', value: 'subtime', text: '发起时间' })
      fieldList.push({ type: 'string', value: 'approvalId', text: '审批人id', dictCode: '' })
      fieldList.push({ type: 'string', value: 'status', text: '审批状态', dictCode: '' })
      fieldList.push({ type: 'datetime', value: 'approvalTime', text: '审批时间' })
      fieldList.push({ type: 'string', value: 'sourceMark', text: '来源标志', dictCode: '' })
      /*fieldList.push({ type: 'string', value: 'approvalInfo', text: '审批意见', dictCode: '' })*/
      this.superFieldList = fieldList
    }
  }
}
</script>
<style scoped>
@import '~@assets/less/common.less';
</style>